package com.hollis公众号.为什么说Java中只有值传递;

import com.externalizable.demo1.User;

/**
 *  经过pass方法执行后，实参的值竟然被改变了，那按照上面的引用传递的定义，实际参数的值被改变了，这不就是引用传递了么。于是，根据上面的两段代码，有人得出一个新的结论：Java的方法中，
 *  在传递普通类型的时候是值传递，在传递对象类型的时候是引用传递。
	但是，这种表述仍然是错误的。不信你看下面这个参数类型为对象的参数传递StringDemo：
 * @author zhangsulei
 *
 */
public class ObjectDemo {

	public static void main(String[] args) {
		ObjectDemo pt = new ObjectDemo();

		User hollis = new User();
		hollis.setName("Hollis");
		hollis.setAge(10);
		pt.pass(hollis);
		System.out.println("print in main , user is " + hollis);
	}

	public void pass(User user) {
		user.setName("hollischuang");
		System.out.println("print in pass , user is " + user);
	}

}
